package org.bw.bookstore.common.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import javax.persistence.Entity;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.List;

/**
 *@program: wisdom_bookstore
 *@description: 图书详情实体类
 *@Author: liuwu
 @Date: 2020-10-20 08:39
 **/
@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
@Entity
@TableName("tb_book_detailed")
public class TbBookDetailed extends BaseEntity implements Serializable {

    /**
     * 书籍名称
     *
     * @Author 孙冬雪
     * @Date 2020/10/23 13:05
     **/
    private String bookName;

    /**
     * 书籍价格
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:27
     **/
    private Double bookPrice;

    /**
     * 书籍作者
     * @Author 孙冬雪
     * @Date 2020/10/21 11:28
     **/
    private String author;

    /**
     * 图书出版社
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:29
     **/
    private String publishingHouse;

    /**
     * 图书描述
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:29
     **/
    private String bookDesc;

    /**
     * 图书库存量
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:29
     **/
    private Integer bookInventoryLevel;

    /**
     * 图书简介
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:29
     **/
    private String briefIntroduction;

    /**
     * 图书供货方
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 11:29
     **/
    private String supplyingParty;

    /**
     * 上架状态 0：未上架、1：已上架
     *
     * @Author 孙冬雪
     * @Date 2020/10/27 10:25
     **/
    private Integer OnTheShelf;

    /**
     * 一个图书详情可以有多个图书插图
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:13
     **/
    @TableField(exist = false)
    @Transient
    @ApiModelProperty(hidden = true)
    private List<TbBookImg> bookImgList;

    /**
     * 一个图书详情可以有多个单品
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:14
     **/
    @TableField(exist = false)
    @Transient
    private List<TbBookSingle> tbBookSingleList;

    /**
     * 一个图书详情可以有多个类型
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:14
     **/
    @TableField(exist = false)
    @Transient
    @ApiModelProperty(hidden = true)
    private List<TbBookType> tbBookTypeList;

    /**
     * 一个书籍详情可能产生多个订单商品
     *
     * @Author 孙冬雪
     * @Date 2020/10/21 15:37
     **/
    @TableField(exist = false)
    @Transient
    @ApiModelProperty(hidden = true)
    private List<TbOrderGoods> tbOrderGoodsList;

    /**
     * 传值用，String类型的type集合
     *
     * @Author 孙冬雪
     * @Date 2020/10/25 10:38
     **/
    @TableField(exist = false)
    @Transient
    private String bookTypeCodes;

    /**
     * 传值用，String类型的img
     *
     * @Author 孙冬雪
     * @Date 2020/10/25 10:38
     **/
    @TableField(exist = false)
    @Transient
    private String bookImgCodes;

}
